1. Field of the Invention
The present invention is directed to a system and method for improved communication between two devices, particularly, to a system and method for the real time switching of an isochronous data stream between two devices.
2. Background and Objects of the Present Invention
A key element in computer system performance is the minimization of processor interrupts during program execution. Early computers interrupted the processor for every character transferred in an input/output (I/O) operation, e.g., moving a character of data between the processor and a storage device. Later techniques collected a block of such characters before interrupting the processor and transferred the entire block in one I/O operation, minimizing interruptions. A further improvement over early computer systems was the use of a Direct Memory Access (DMA) channel, improving computer operations by preserving the processor's operation state instead of interrupting the executing program, swapping it with the transference program and swapping the executing program back after the I/O operation is complete. With DMA, processor operation was only delayed.
With the increasing proliferation of computers into every aspect of society, new techniques of data transference are necessary to accommodate the flood of information. One problematic aspect of this informational deluge on existing computer systems is the requirement of isochronicity, i.e., real-time or interactive communication. Isochronous communications and data transference are present in a variety of industries, e.g., telephony, and involve a multitude of products, e.g., telephones, microphones, modems, keyboards, mice, joysticks, scanners, printers, CD-ROM devices, tape and floppy drives, and a host of other peripherals. By reason of the interactive nature of isochronous data, e.g., a telephone conversation, the queuing or buffering of such data may interfere with the dynamics of the conversation (or movie, video game, etc.) by introducing a deleterious delay or latency in the isochronous data stream transmission, destroying the illusion of true interactivity. Further, if the delay in isochronous data delivery is long enough, e.g., a speech segment or frame of a movie, the data may be discarded or lost in an effort to maintain a real-time communication link.
It is, accordingly, an object of the present invention to prevent or ameliorate the aforementioned deleterious delays in the transmission of an isochronous data stream.
It is a further object of the present invention to prevent or reduce the loss of data during the aforesaid isochronous data stream transmission.